77 research outputs found

    Using Constraint Programming to Verify DOPLER Variability Models

    No full text
    Software product lines are typically developed using model-based approaches. Models are used to guide and automate key activities such as the derivation of products. The verification of product line models is thus essential to ensure the consistency of the derived products. While many authors have proposed approaches for verifying feature models there is so far no such approach for decision models. We discuss challenges of analyzing and verifying decision-oriented DOPLER variability models. The manual verification of these models is an error-prone, tedious, and sometimes infeasible task. We present a preliminary approach that converts DOPLER variability models into constraint programs to support their verification. We assess the feasibility of our approach by identifying defects in two existing variability models

    Supporting distributed product configuration by integrating heterogeneous variability modeling approaches

    Get PDF
    Context In industrial settings products are developed by more than one organization. Software vendors and suppliers commonly typically maintain their own product lines, which contribute to a larger (multi) product line or software ecosystem. It is unrealistic to assume that the participating organizations will agree on using a specific variability modeling technique—they will rather use different approaches and tools to manage the variability of their systems. Objective We aim to support product configuration in software ecosystems based on several variability models with different semantics that have been created using different notations. Method We present an integrative approach that provides a unified perspective to users configuring products in multi product line environments, regardless of the different modeling methods and tools used internally. We also present a technical infrastructure and a prototype implementation based on web services. Results We show the feasibility of the approach and its implementation by using it with the three most widespread types of variability modeling approaches in the product line community, i.e., feature-based, OVM-style, and decision-oriented modeling. To demonstrate the feasibility and flexibility of our approach, we present an example derived from industrial experience in enterprise resource planning. We further applied the approach to support the configuration of privacy settings in the Android ecosystem based on multiple variability models. We also evaluated the performance of different model enactment strategies used in our approach. Conclusions Tools and techniques allowing stakeholders to handle variability in a uniform manner can considerably foster the initiation and growth of software ecosystems from the perspective of software reuse and configuration.Ministerio de Economía y Competitividad TIN2012-32273Junta de Andalucía TIC-186

    Evolution in Dynamic Software Product Lines

    Get PDF
    International audienceMany software systems today provide support for adaptation and reconfiguration at runtime, in response to changes in their environment. Such adaptive systems are designed to run continuously and may not be shut down for reconfiguration or maintenance tasks. The variability of such systems has to be explicitly managed, together with mechanisms that control their runtime adaptation and reconfiguration. Dynamic software product lines (DSPLs) can help to achieve this. However, dealing with evolution is particularly challenging in a DSPL, as changes made at run-time can easily lead to inconsistencies. This paper describes the challenges of evolving DSPLs using an example cyber-physical system for home automation. We discuss the shortcomings of existing work and present a reference architecture to support DSPL evolution. To demonstrate its feasibility and flexibility, we implemented the proposed reference architecture for two different DSPLs: the aforementioned cyber-physical system, which uses feature models to describe its variability, and a runtime monitoring infrastructure, which is based on decision models. To assess the industrial applicability of our approach, we also implemented the reference architecture for a real-world DSPL, an automation software system for injection molding machines. Our results provide evidence on the flexibility, performance and industrial applicability of our approach

    Goal and variability modeling for service-oriented system: Integrating i* with decision models

    Get PDF
    Variability modeling and service-orientation are important approaches that address both the flexibility and adaptability required by stakeholders of today’s software systems. Goal-oriented approaches for modeling service-oriented systems and their variability in an integrated manner are needed to address the needs of heterogeneous stakeholders and to develop and evolve these systems. In this paper we propose an approach that complements the i* modeling framework with decision models from orthogonal variability modeling. We illustrate the approach using an example and present options for tool support.Peer ReviewedPostprint (author's final draft

    Monitoring and adaptation of service-oriented systems with goal and variability models

    Get PDF
    Variability modelling and service-orientation are important approaches for achieving both flexibility and adaptability required by stakeholders of software systems. In this paper, we present the MAESoS approach that utilizes goal and variability models to support runtime monitoring and adaptation of service-oriented systems. We illustrate our approach using two scenarios and present a tool architecture that integrates a monitoring tool and an existing tool for defining and executing variability models.Postprint (published version
    corecore